12546
15704
Ich versuche, eine Vorhersage nach dem Aufheben der Auswahl zu laden, erhalte jedoch diesen Fehler
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/weight_boosting.py:29:
DeprecationWarning: numpy.core.umath_tests ist ein internes NumPy-Modul
und sollte nicht importiert werden. Es wird in einem zukünftigen NumPy entfernt
Freisetzung. aus numpy.core.umath_tests importiere inner1d
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/base.py:311:
UserWarning: Es wird versucht, den Schätzer DecisionTreeClassifier von zu entfernen
Version 0.20.2 bei Verwendung von Version 0.19.2. Dies kann zum Bruch führen
Code oder ungültige Ergebnisse. Benutzung auf eigene Gefahr. UserWarning)
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/base.py:311:
UserWarning: Es wird versucht, den Schätzer RandomForestClassifier von zu entfernen
Version 0.20.2 bei Verwendung von Version 0.19.2. Dies kann zum Bruch führen
Code oder ungültige Ergebnisse. Benutzung auf eigene Gefahr. UserWarning)
Traceback (letzter Aufruf zuletzt): Datei "rf_pred_model_tester.py",
Zeile 7, in
print ('Class:', int (rf.predict (xx))) Datei "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/forest.py" ,
Zeile 538, in Vorhersage
proba = self.predict_proba (X) Datei "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/forest.py",
Zeile 581 in Predict_Proba
n_jobs, _, _ = _partition_estimators (self.n_estimators, self.n_jobs) Datei
"/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/base.py",
Zeile 153 in _partition_estimators
n_jobs = min (_get_n_jobs (n_jobs), n_estimators) Datei "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/utils/init.py",
Zeile 464 in _get_n_jobs
if n_jobs <0: TypeError: '<' wird zwischen Instanzen von 'NoneType' und 'int' nicht unterstützt.
Hier ist der Code, den ich ausführen möchte
Gurke importieren
importiere numpy als np
mit open ('rf_model_1', 'rb') als f:
rf = pickle.load (f)
xx = np.array ([67, 17832, 1, 1, 0, 33, 1941902452, 36, 33011,0, 19, 18, 0, 2, 1]). Umformung (1, -1)
print ('Klasse:', int (rf.predict (xx)))
Ich erwarte ein Ergebnis wie dieses:
Klasse: [0]
Wenn ich den Code auf Jupiter ausführe, funktioniert er einwandfrei, aber ich erhalte eine Fehlermeldung, wenn ich versuche, auf dem Terminal auszuführen. 
Ihr Fehler drückte es unverblümt aus:
UserWarning: Der Versuch, den Schätzer RandomForestClassifier von Version 0.20.2 zu entfernen, wenn Version 0.19.2 verwendet wird. Dies kann zu fehlerhaftem Code oder ungültigen Ergebnissen führen. Benutzung auf eigene Gefahr.
Und genau das ist passiert; Beim Beizen wurde das Attribut n_jobs Ihres RandomForestClassifier auf None gehalten. Dies ist der Standardwert für die Initialisierung, aber hinter den Kulissen wird dieser normalerweise auf 1 gesetzt. Weitere Details zu n_jobs finden Sie hier: https://scikit-learn.org/stable/glossary.html#term-n-jobs
Wenn Sie die n_jobs von rf auf 1 setzen, reicht dies aus:
Gurke importieren
importiere numpy als np
mit open ('rf_model_1', 'rb') als f:
rf = pickle.load (f)
rf.n_jobs = 1
xx = np.array ([67, 17832, 1, 1, 0, 33, 1941902452, 36, 33011,0, 19, 18, 0, 2, 1]). Umformung (1, -1)
print ('Klasse:', int (rf.predict (xx)))
|
Sehr aktive Frage. Verdiene 10 Reputationen, um diese Frage zu beantworten. Die Reputationsanforderung schützt diese Frage vor Spam und nicht beantworteten Aktivitäten.
Nicht die Antwort, die Sie suchen? Durchsuchen Sie andere Fragen mit dem Tag python-3.x oder stellen Sie Ihre eigene Frage.